package com.foreknow.demo16;

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;

public class MapDemo {
    public static void main(String[] args) {
        User u1 = new User();
        u1.setName("fender");
        User u2 = new User();
        u2.setName("gibson");
        User u3 = new User();
        u3.setName("yamaha");

        //1. 创建一个Map集合
        Map<String,User> map = new HashMap<>();
        //2. 向Map集合中添加对象
        map.put("1",u1);
        map.put("2",u2);
        map.put("3",u3);
        //3. 获取Map集合中的元素(根据key)
        User u = map.get("2");
        System.out.println(u.getName());
        System.out.println("-------------------------------------------------------");
        //4. 遍历Map集合 可以使用Set<Map.Entry<K,V>> entrySet() 返回Set集合，然后就可以使用迭代器了
        //   Map.Entry<K,V>表示我们要遍历的Map集合
        Set<Map.Entry<String,User>> s = map.entrySet();
        Iterator<Map.Entry<String,User>> it = s.iterator();
        while (it.hasNext()){
            Map.Entry<String,User> m = it.next();
            String key = m.getKey();
            User value = m.getValue();
            System.out.println(key+"------"+value.getName());
        }
    }
}
